Field
The disclosed embodiments relate to processing of network packets. More specifically, the disclosed embodiments relate to techniques for filtering unsolicited incoming packets to an electronic device using a list of accepted incoming packet attributes for the electronic device.
Related Art
Recent improvements in computing power and wireless networking technology have significantly increased the capabilities of electronic devices. For example, laptop computers, tablet computers, portable media players, smartphones, digital media receivers, video game consoles, and/or other modern computing devices are typically equipped with WiFi capabilities that allow the computing devices to retrieve webpages, stream audio and/or video, share desktops and/or user interfaces (UIs), and/or transfer files wirelessly among one another.
To provide such wireless networking capabilities, each electronic device may include a wireless network interface such as a WiFi interface, a cellular network interface, and/or a Bluetooth (Bluetooth™ is a registered trademark of Bluetooth SIG, Inc.) interface. The electronic device may also include a baseband processor and an application processor that implement a network stack on the electronic device. For example, the baseband processor may relay incoming packets from the wireless network interface to the application processor, and the application processor may route the incoming packets to applications on the electronic device. Conversely, the application processor may obtain outgoing packets from the applications and provide the outgoing packets to the baseband processor, and the baseband processor may format the outgoing packets and transmit the outgoing packets over the wireless network interface.
During a sleep mode on the electronic device, the application processor may be powered down, while the baseband processor may remain powered on to detect incoming packets over the wireless network interface and wake the application processor once the incoming packets are received. An unsolicited incoming packet such as a ping packet may thus wake up the application processor, only to be discarded by the application processor because no application on the electronic device is listening for the unsolicited incoming packet. Unsolicited incoming packets may also be sent as malicious attacks from other electronic devices to exploit security vulnerabilities in software executing on the application processor. Consequently, the operation and/or use of electronic devices may be adversely impacted by the processing of unsolicited incoming packets on the electronic devices.